package com.example.bgmachine.bgmachine.logs;

import android.util.Log;

public class DebugUtils {
    public static void printDebugInfo(String infors) {
        // 获取当前的堆栈跟踪信息
        StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();

        // 堆栈跟踪信息的第 3 个元素是当前方法的信息
        // stackTrace[0] 是 getStackTrace() 方法
        // stackTrace[1] 是 printDebugInfo() 方法
        // stackTrace[2] 是调用 printDebugInfo() 的方法
        StackTraceElement caller = stackTrace[3];

        // 获取类名、方法名和行号
        String className = caller.getClassName();
        String methodName = caller.getMethodName();
        int lineNumber = caller.getLineNumber();

        // 打印信息
        Log.d("DebugInfo", "Class: " + className + ", Method: " + methodName + ", Line: " + lineNumber +  ", infros: "+infors);

    }

    public static void printLogInfo(String infors) {
        // 获取当前的堆栈跟踪信息
        StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();

        // 堆栈跟踪信息的第 3 个元素是当前方法的信息
        // stackTrace[0] 是 getStackTrace() 方法
        // stackTrace[1] 是 printDebugInfo() 方法
        // stackTrace[2] 是调用 printDebugInfo() 的方法
        StackTraceElement caller = stackTrace[3];

        // 获取类名、方法名和行号
        String className = caller.getClassName();
        String methodName = caller.getMethodName();
        int lineNumber = caller.getLineNumber();

        // 打印信息
        Log.d("DebugInfo", "test=Class: " + className + ", Method: " + methodName + ", Line: " + lineNumber +  ", infros: "+infors);

    }

}